[Serverless Days Tokyo 2019] Knativeで作るDIY FaaSのワークショップに参加しました
CX事業本部@札幌の佐藤です。参加ブログが遅くなってしまいましたが、ServerlessDays Tokyo 2019で「Knativeで作るDIY FaaS」のワークショップに参加してきました。
講師
merpay, Inc.
Sugita Toshinori (@toshi0607)
スライド
https://speakerdeck.com/toshi0607/serverless-days-tokyo-2019-knative-workshop
ワークショップ用リポジトリ
https://github.com/toshi0607/build-your-own-platform-with-knative
上記のリポジトリを見れば誰でもワークショップができるようになってますので、ぜひやってみてください!
※GCP(Google Cloud Platform)のアカウントが必要です。
ワークショップの内容
前半で講師の方からKubernetesとKnativeについての説明があり、その後、上記のワークショップ用のリポジトリの流れにそって、各自KnativeとGCPを使ってFaaSのプラットフォームを作っていくというワークショップでした。
Kubernetesでのアプリケーション開発
- コードを書く←開発者はここに集中したい
- Dockerfileを書く
- Dockerイメージをビルドする
- DockerイメージをリポジトリにPushする
- サービスをデプロイする
- サービスをインターネットに公開する
- モニタリングの設定
- オートスケールの設定
Knativeとは
Kubernetes上でServerlessプラットフォームを実現するためのプロダクト。複雑なKubernetesのリソースを抽象化して、開発者がコードを書くことに集中できるようにする=FaaSで実現したいこととマッチする。
感想
前々からKnativeについて気になってはいましたが、なかなか触る機会がありませんでした。ServerlessDaysのワークショップデイでKnativeのワークショップがあり、これは参加するしかないと思い参加しました。GKEのクラスタの構築、KnativeのEvent、Servingなどの各コンポーネントの仕組みを実際に動作させながら理解することができます。また、PodのオートスケールやRouteを使ったBlue/Gleenデプロイの方法なども紹介されていて実践的な内容を学ぶことができます。FaaSについては、様々なオープンソースの実装があり、サーバーレスで構築=Lambdaなどと一括りに考えるのではなく他のサーバーレス技術もキャッチアップをして幅広く技術選定ができれば良いなと思いました。